<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    .box{width:100px;height:100px;background: red;border-radius:50%;position: absolute;left:0;top:0;}
  </style>
</head>
<body>
  <div class="box"></div>
</body>
<script>

  var clientW = document.documentElement.clientWidth;
  var box = document.querySelector(".box");
  // 步长
  var X = 10;

  // 开启计时器
  var t = setInterval(function(){
    // 判断元素是否到最右侧
    if(box.offsetLeft >= clientW - box.offsetWidth){
      // 反转步长
      X = -X;
    }
    // 判断元素是否到最左侧
    if(box.offsetLeft <0 ){
      // 反转步长
      X = -X;
    }
    // 获取当前位置，改变指定步长后，再设置回元素
    box.style.left = box.offsetLeft + X + "px";

  }, 30);


</script>
</html>